package com.hengpeng.itfin.service;

import com.hengpeng.itfinbase.message.RequestMessage;
import com.hengpeng.itfinbase.message.ResponseMessage;
import com.hengpeng.itfinbase.message.partner.NotifyRequestMsg;
import com.hengpeng.itfinbase.message.partner.NotifyResponseMsg;

public interface PartnerService
{

	/**
	 * <pre>
	 * 请求前的工作
	 * </pre>
	 */
	public void beforeRequest(RequestMessage request);

	/**
	 * <pre>
	 * 封装请求
	 * </pre>
	 * @param reqMsg
	 * @return
	 */
	public ResponseMessage request(RequestMessage reqMsg);

	/**
	 * <pre>
	 * 处理通知
	 * </pre>
	 * @param notifyMsg
	 * @return
	 */
	public NotifyResponseMsg dealNotify(NotifyRequestMsg notifyMsg);

	/**
	 * <pre>
	 * 是否为资金托管模式
	 * </pre>
	 * @return
	 */
	public boolean isTrustPattern();
}
